package gui;

import javax.swing.JPanel;
import java.awt.GridLayout;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import javax.swing.JComboBox;
import fachlogik.FahrtenbuchsException;
import fachlogik.Fahrzeug;
import fachlogik.TREIBSTOFF;
import javax.swing.JButton;


public class FahrzeugAnlegenEditor extends JPanel
{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private JTextField tfBezeichnung;
	private JTextField tfKilometerstand;
	private JComboBox comboBox;	
	private Fahrzeug fahrzeug;
	
	public FahrzeugAnlegenEditor()
	{
		initPanel();
	}

	/**
	 * Create the panel.
	 */
	
	private void initPanel()
	{
		setLayout(new GridLayout(2, 1, 0, 0));
		
		JPanel panel = new JPanel();
		add(panel);
		panel.setLayout(new GridLayout(3, 2, 0, 0));
		
		JLabel lblNewLabel = new JLabel("Bezeichnung:");
		panel.add(lblNewLabel);
		
		tfBezeichnung = new JTextField();
		panel.add(tfBezeichnung);
		tfBezeichnung.setColumns(10);
		
		JLabel lblNewLabel_1 = new JLabel("Treibstoff");
		panel.add(lblNewLabel_1);
		
		comboBox = new JComboBox(TREIBSTOFF.values());
		panel.add(comboBox);
		
		JLabel lblNewLabel_2 = new JLabel("Kilometerstand");
		panel.add(lblNewLabel_2);
		
		tfKilometerstand = new JTextField();
		panel.add(tfKilometerstand);
		tfKilometerstand.setColumns(10);
		
		JPanel panel_1 = new JPanel();
		add(panel_1);
		
		JButton btnNewButton = new JButton("anlegen");
		panel_1.add(btnNewButton);

	}

	public Fahrzeug getFahrzeug() throws FahrtenbuchsException
	{
		if (fahrzeug != null)
		{
			try
				//hole Daten aus Eingabefelder und setze diese in Fahrzeugen
			{
				fahrzeug.setBezeichnung(tfBezeichnung.getText());
				fahrzeug.setTreibstoff((TREIBSTOFF)comboBox.getSelectedItem());
				fahrzeug.setKmstand(Integer.parseInt(tfKilometerstand.getText()));
			}
			catch (NumberFormatException e)
			{
				throw new FahrtenbuchsException("falsche Eingabe");
			}
		}
		
		return fahrzeug;
	}
	
	// Set-Methode brauch ich einstweilen nicht, da ich noch nicht mit einer Liste arbeite!

	public void setFahrzeug(Fahrzeug fahrzeug) throws FahrtenbuchsException
	{
		this.fahrzeug = fahrzeug;
	}
	
	
	

}
